package com.gimi.cloud.bbp.client.service.mall;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.gimi.cloud.bbp.common.utils.reqhead.Response;
import com.gimi.cloud.bbp.dto.mall.MallCartDTO;

/**
 * 购物车服务
 * @author lilinfeng
 */
public interface MallCartService {
	
	/** saveShoppingCart方法指令：添加 */
	final String ADD = "add";
	/** saveShoppingCart方法指令：修改 */
	final String MODIFY = "modify";

	/**
	 * 添加商品到购物车
	 * @param mallCart
	 * @return 
	 */
	Response addGoodsToShoppingCart(MallCartDTO mallCart);
	
	/**
	 * 修改购物车数量
	 * @param mallCart
	 * @return
	 */
	Response updateShoppingCart(MallCartDTO mallCart);

	/**
	 * 查询购物车列表
	 * @param mallCart
	 */
	Response showShoppingCart(MallCartDTO mallCart);

	/**
	 * 删除购物车列表中商品
	 * @param mallCart
	 */
	Response deleteShoppingCart(JSONObject mallCart);

	/**
	 * 通过购物车ID列表删除购物车数据
	 * @param cartIdList
	 * @return
	 */
	int deleteShoppingCartByCartIdList(List<?> cartIdList);

	/**
	 * 保存购物车到数据库
	 * @param mallCart 购物车数据
	 * @param instructions 方法指令
	 * @return 购物车ID
	 */
	Integer saveShoppingCart(MallCartDTO mallCart, String instructions);
}